/*************************************************************************
	> File Name: Example6_3.java
	> Author: Potter
	> Mail: tobewhatwewant@gmail.com 
	> Created Time: 2014年07月08日 星期二 12时49分16秒
 ************************************************************************/

/* 接口回调：存放实现该接口的类的实例对象
 *  类似抽象类(abstract)、上转型对象、多态、重写方法(override)
 *
 * */

interface ShowMessage {
    void showMark(String s); // public abstract void showMark(String s);
}

class PC implements ShowMessage {
    public void showMark(String s) {
        System.out.println(s);
    }
}

class TV implements ShowMessage {
    public void showMark(String s) {
        System.out.println(s);
    }
}

public class Example6_3 {
    public static void main(String [] args) {
        ShowMessage sm; // 声明接口变量
        sm = new TV(); // 接口变量存放对象的引用
        sm.showMark("长城牌电视机"); // 接口回调

        sm = new PC(); // 
        sm.showMark("联想Y480s电脑");
    }
}
